package com.maimang.platform.dsp.mapper;

import com.maimang.platform.dsp.entity.Advertiser;
import com.maimang.platform.dsp.entity.AdvertiserShort;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

/**
 * @author Rocky
 * @version 1.0.0
 * @classname AdvertiserMapper
 * @description <br>广告主数据层</br>
 * @date 2019-08-13 15:35:11
 * @email jintaozhao@qq.com
 */
public interface AdvertiserMapper extends Mapper<Advertiser> {
	/**
	 * 查询广告主信息
	 *
	 * @param id 广告主ID
	 * @return 广告主信息
	 */
	Advertiser selectAdvertiserById(Long id);

	/**
	 * 查询广告主信息（简约版）
	 *
	 * @param id 广告主id
	 * @return 广告主信息
	 */
	AdvertiserShort selectShortById(Long id);

	/**
	 * 查询广告主列表
	 *
	 * @param advertiser 广告主信息
	 * @return 广告主集合
	 */
	List<Advertiser> selectAdvertiserList(Advertiser advertiser);

	/**
	 * 查询指定字段广告主列表
	 *
	 * @param advertiser 查询参数
	 * @return
	 */
	List<AdvertiserShort> selectShortList(Advertiser advertiser);

	/**
	 * 新增广告主
	 *
	 * @param advertiser 广告主信息
	 * @return 结果
	 */
	int insertAdvertiser(Advertiser advertiser);

	/**
	 * 修改广告主
	 *
	 * @param advertiser 广告主信息
	 * @return 结果
	 */
	int updateAdvertiser(Advertiser advertiser);

	/**
	 * 删除广告主
	 *
	 * @param id 广告主ID
	 * @return 结果
	 */
	int deleteAdvertiserById(Long id);

	/**
	 * 批量删除广告主
	 *
	 * @param ids 需要删除的数据ID
	 * @return 结果
	 */
	int deleteAdvertiserByIds(String[] ids);

	/**
	 * @return 未同步的id列表
	 */
	List<Long> selectUnsyncIds();

}